package karaoke.negocio;

import karaoke.dao.ComprobanteDAO;
import karaoke.excepcion.DAOExcepcion;
import karaoke.modelo.Comprobante;
import java.util.Date;
import java.util.List;

public class GestionComprobante {

    public List<Comprobante> buscarPorCodigo(String codigo) throws DAOExcepcion {
        ComprobanteDAO dao = new ComprobanteDAO();
        return dao.buscarPorCodigo(codigo);
    }

    public Comprobante insertar(String codigo, Date fecha, float importe, 
                                float igv, float total, String ruc, int idReserva) throws DAOExcepcion {
        ComprobanteDAO dao = new ComprobanteDAO();

        Comprobante comprobante = new Comprobante();
        comprobante.setCodigo(codigo);
        comprobante.setFecha(fecha);
        comprobante.setImporte(importe);
        comprobante.setIgv(igv);
        comprobante.setTotal(total);
        comprobante.setRuc(ruc);
        comprobante.setIdReserva(idReserva);
        return dao.insertar(comprobante);
    }

    public Comprobante obtener(int idComprobante) throws DAOExcepcion {
        ComprobanteDAO dao = new ComprobanteDAO();
        return dao.obtener(idComprobante);
    }

    public void eliminar(int idComprobante) throws DAOExcepcion {
        ComprobanteDAO dao = new ComprobanteDAO();
        dao.eliminar(idComprobante);
    }

    public Comprobante actualizar(String codigo, Date fecha, float importe, 
                                  float igv, float total, String ruc, int idReserva) throws DAOExcepcion {
        ComprobanteDAO dao = new ComprobanteDAO();

        Comprobante comprobante = new Comprobante();
        comprobante.setIdReserva(idReserva);
        return dao.actualizar(comprobante);
    }

    public List<Comprobante> listar() throws DAOExcepcion {
        ComprobanteDAO dao = new ComprobanteDAO();
        return dao.listar();
    }
}
